package com.ticket.system.service;

import java.util.Date;
import java.util.List;
import com.ticket.system.domain.YanchuMovieBatch;

import javax.servlet.http.HttpServletResponse;

/**
 * 观演卡批次信息Service接口
 * 
 * @author ruoyi
 * @date 2023-12-07
 */
public interface IYanchuMovieBatchService 
{
    /**
     * 查询观演卡批次信息
     * 
     * @param id 观演卡批次信息主键
     * @return 观演卡批次信息
     */
    public YanchuMovieBatch selectYanchuMovieBatchById(Long id);

    /**
     * 查询观演卡批次信息列表
     * 
     * @param yanchuMovieBatch 观演卡批次信息
     * @return 观演卡批次信息集合
     */
    public List<YanchuMovieBatch> selectYanchuMovieBatchList(YanchuMovieBatch yanchuMovieBatch);

    /**
     * 新增观演卡批次信息
     * 
     * @param yanchuMovieBatch 观演卡批次信息
     * @return 结果
     */
    public int insertYanchuMovieBatch(YanchuMovieBatch yanchuMovieBatch);

    /**
     * 修改观演卡批次信息
     * 
     * @param yanchuMovieBatch 观演卡批次信息
     * @return 结果
     */
    public int updateYanchuMovieBatch(YanchuMovieBatch yanchuMovieBatch);

    /**
     * 批量删除观演卡批次信息
     * 
     * @param ids 需要删除的观演卡批次信息主键集合
     * @return 结果
     */
    public int deleteYanchuMovieBatchByIds(Long[] ids);

    /**
     * 删除观演卡批次信息信息
     * 
     * @param id 观演卡批次信息主键
     * @return 结果
     */
    public int deleteYanchuMovieBatchById(Long id);

    /**
     * 获取观演卡名称
     *
     * @return
     */
    String getCardName();

    /**
     * 设置有效期
     *
     * @param batchIds
     * @param cardIds
     */
    void updateValidTime(String batchIds, String cardIds, Date time);

    /**
     * 批次激活
     *
     * @param batchIds
     * @param activeId
     * @param activeName
     */
    void activeBatch(String batchIds, Long activeId,String activeName);

    /**
     * 批量导出
     *
     * @param batchIds
     * @param response
     */
    void export(List<Long> batchIds, HttpServletResponse response);
}
